package flyWeightPattern.demo;

import java.util.concurrent.ConcurrentHashMap;

/**
 * @author： pang-yun
 * @date： 2021-12-30 14:22
 * 功能目的 ：用于
 */

//网站工厂类  根据需要返回一个 网站
public class WebSiteFactory {
    // 集合  充当池的作用
    private ConcurrentHashMap<String,WebSite>  pool = new ConcurrentHashMap<>();

    //根据网站类型，返回一个网站，如果没有就创建一个网站 并放入到池中 并返回
    public WebSite getWebSiteCategory(String type){
       if (!pool.containsKey(type)){
           pool.put(type,new ConcreteWebSite(type));
       }
       return pool.get(type);
    }

    //获取网站 池中总数
    public int size(){
        return pool.size();
    }
}
